iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
自我挑戰組

老菜雞挑戰30天學爆Unity&C#會成功嗎?...系列 第 12

【Day12】老菜雞學下樓梯遊戲之Unity UI&EventSystem簡介

  • 分享至 

  • xImage
  •  

前言

昨天幫Player新增了血量屬性,但這個屬性目前只有開發者,也就是我們,用Unity介面的Inspector欄位才看得到血量是多少,在遊戲畫面中,玩家是看不到目前的血量變化的,於是我們就要把血量顯示到畫面上讓玩家知道,那我們可以透過Unity的UI、EventSystem及程式碼來達到該目的。


什麼是UI

  1. UI簡介
    UI全名為User Interface也就是使用者介面,用於開發遊戲和應用程式的用戶界面,是使用Components及Game View去排列介面,讓玩家可以知道遊戲中的資訊,例如角色血量、遊戲分數等等,也可以製作成操作選單。
  1. 什麼是Canvas?
    Canvas是一個畫布的概念,所有UI物件都應該在這個畫布裡且都是這個它的子物件,而這些UI物件也會被自動放在Canvas裡,像是只要新增一個UI,就算我們沒新增過Canvas,它也會自動產生Canvas及稍等要介紹的EventSystem。
    而Canvas是獨立於遊戲,意思就是只要是Canvas底下的所有子物件都能蓋過遊戲畫面。
  2. UI舉例
    在左側Hierarchy空白處右鍵點選UI就會跑出以下選單
    https://ithelp.ithome.com.tw/upload/images/20220923/20152411vdci71vB7K.jpg
    • 文字(Text)
      就是字面上的增加文字的意思,還能更改字型、顏色、字體大小等等。
      https://ithelp.ithome.com.tw/upload/images/20220923/20152411C30XOyjd09.jpg

    • 圖像(Image)
      https://ithelp.ithome.com.tw/upload/images/20220923/20152411npUEBU422z.jpg

    • 按鈕(Button)
      https://ithelp.ithome.com.tw/upload/images/20220923/20152411lp795sEJkx.jpg

    • 面板(Panel)
      https://ithelp.ithome.com.tw/upload/images/20220923/20152411oiCDYGkhr5.jpg

什麼是EventSystem?

用來處理Unity scene中的事件,例如Canvas裡可能會有按鈕UI,那當遊戲中要按這顆按鈕時,會發生什麼事情,這就是EventSystem要處理的,在建立UI時一樣假如我們沒有新增過這個物件,Unity也是會自動建立EventSystem物件,該物件是透過input device例如滑鼠、鍵盤,傳送Event到物件上。

Unity Event System Manager 事件與觸發


心得

今天了解到Unity的重要系統—UI,一開始不知道額外有個系統去放使用者介面,它可以讓Unity有個清楚的分層,也不用擔心遊戲物件會不會遮擋到它~

  • 參考網址:https://www.youtube.com/watch?v=nPW6tKeapsM&ab_channel=GrandmaCan-%E6%88%91%E9%98%BF%E5%AC%A4%E9%83%BD%E6%9C%83

  • 音效、圖片 : 遊戲素材
    (素材由安德斯提供,感謝大大/images/emoticon/emoticon41.gif)


上一篇
【Day11】老菜雞學下樓梯遊戲之Unity Component新增血量屬性
下一篇
【Day13】老菜雞學下樓梯遊戲之新增血量的UI-Unity UI的應用
系列文
老菜雞挑戰30天學爆Unity&C#會成功嗎?...30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言